Automatic noise profile generation

ABSTRACT

A system for noise profile generation includes a customer gateway communicatively coupled to one or more end devices over a communication medium, at least one noise information node communicatively coupled to the customer gateway and programmed to extract noise information present on a communication path from the customer gateway to at least one of the one or more end devices, a noise profile database storing one or more noise profiles, and a noise profile generator. The noise profile generator includes at least one processor and non-transitory computer readable media having a set of instructions executable by the at least one processor to retrieve the extracted noise information associated with the communication path, determine whether the at least one noise characteristic of the extracted noise information matches with one or more noise profiles and identify at least one noise source on the communication path.

COPYRIGHT STATEMENT

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

FIELD

The present disclosure relates, in general, to network diagnostics, andmore particularly to a system for noise profile generation fordiagnosing problematic line noise sources.

BACKGROUND

Network communications and network devices are often susceptibleperformance degradation due to noise and interference introduced byvarious external sources. For example, wireless communications overWi-Fi may be interfered with by emissions in the same frequency band byhousehold devices such as microwave ovens, cordless phones, babymonitors, Bluetooth devices, remote controls, car alarms, home securityand surveillance systems, and other similar devices. Other Wi-Finetworks, within range and utilizing the same frequency band, may alsocontribute to noise and interference. Similarly, external noise sourcesmay create significant problems in other communication technologies,such as power line communications, digital subscriber line (xDSL), andother wired and wireless communications.

As household appliances and electronic devices become increasinglyinterconnected, each appliance and device may further be a source ofnoise. Typically, to improve network performance, network users willrelocate within their premises increase signal strength by moving closerto the signal source, or decrease noise strength by moving away from anoise source or area with noise. Under normal circumstances, networkusers typically guess as to the source of noise by removing allsuspected devices, or staying away from a general area. However, thesemethods rely on guessing, and trial and error. Moreover, it is oftenimpractical for a network user to remove or shut off devices andappliances in a blind attempt to improve network performance.

As is well understood in the art, signal-to-noise ratio (SNR) can limitchannel capacity and bandwidth over a communication channel.Conventional techniques exist for detecting noise, and avoiding ormitigating noise on the communication channel. However, conventionaltechniques are unable to identify a source of the noise on thecommunication channel. Thus, a system for automatic noise profilegeneration is presented by the embodiments below.

BRIEF SUMMARY

According to a set of embodiments, a system, apparatus, and method forautomatic noise profile generation are provided.

The tools provided by various embodiments include, without limitation,methods, systems, and/or software products. Merely by way of example, amethod might comprise one or more procedures, any or all of which areexecuted by a computer system. Correspondingly, an embodiment mightprovide a computer system configured with instructions to perform one ormore procedures in accordance with methods provided by various otherembodiments. Similarly, a computer program might comprise a set ofinstructions that are executable by a computer system (and/or aprocessor therein) to perform such operations. In many cases, suchsoftware programs are encoded on physical, tangible, and/ornon-transitory computer readable media (such as, to name but a fewexamples, optical media, magnetic media, and/or the like).

In an aspect, a system for automatic noise profile generation mayinclude a customer gateway communicatively coupled to one or more enddevices over a communication medium, at least one noise information nodecommunicatively coupled to the customer gateway, wherein each of the atleast one noise information node is programmed to extract an extractednoise information present on a communication path from the customergateway to at least one of the one or more end devices and the extractednoise information comprises at least one noise characteristic, a noiseprofile database storing one or more noise profiles wherein each of theone or more noise profiles is respectively associated with at least onenoise source, and a noise profile generator having at least oneprocessor, and non-transitory computer readable media having encodedthereon computer software comprising a set of instructions. According toa set of embodiments, the set of instructions may be executable by theat least one processor to retrieve, from the at least one noiseinformation node, the extracted noise information associated with thecommunication path, determine whether the at least one noisecharacteristic of the extracted noise information matches with one ormore noise profiles at the noise profile database, generate, in responseto determining that at least one noise characteristic of the extractednoise information does not match with the one or more noise profiles, anew noise profile based on the extracted noise information, associate,at the noise profile database, at least one of the one or more enddevices with the new noise profile, and identify, based on either thenew noise profile or a matching noise profile of the one or more noiseprofiles, the at least one noise source on the communication path.

In another set of embodiments, the communication medium may include oneof a power line at a customer premises, twisted pair cable, coaxialcable, or optical fiber. In some embodiments, the communication mediummay be a wireless connection for at least one of Wi-Fi, Bluetooth,infrared, near-field, or Z-Wave communications. In various embodiments,each of the at least one noise information node may have a uniqueidentifier and is further programmed to identify a new end deviceconnected to the communication path, and the noise profile generator mayfurther include instructions executable to identify, at the noiseinformation database, existing noise information associated with thecommunication path, based on the unique identifier, subtract theexisting noise information from the extracted noise informationresulting in an added noise information, and generate, based on theadded noise information, an isolated noise profile associated with thenew end device.

In further embodiments, the communication medium may include atransmission spectrum, wherein the transmission spectrum includes aplurality of sub-carrier channels, each sub-carrier channel spanning arespective frequency range within the transmission spectrum. Each of theat least one noise information node may be a wireless transceiverprogrammed to receive, from the customer gateway, a signal on each ofthe plurality of sub-carrier channels, wherein the extracted noiseinformation is extracted respectively from each of the plurality ofsubcarrier channels, and determine, based on the extracted noiseinformation, a signal-to-noise ratio respectively for each of thesub-carrier channels. In some embodiments, the transceiver may includeat least one of a discrete multitone (DMT) receiver or an orthogonalfrequency division multiple access (OFDMA) receiver.

In another set of embodiments, crosstalk noise may be cancelled from theextracted noise information, wherein the crosstalk noise of a near-endtransceiver of the at least one customer node is canceled with thecrosstalk noise of a corresponding far-end transceiver of the at leastone customer node. In some embodiments, the set of instructions of thenoise profile generator may further include instructions that cause theprocessor to identify, based on the new noise profile or the matchingnoise profile, at least one secondary end device on a secondcommunication path. In further embodiments, the at least one noisecharacteristic may include a frequency spectrum of the noise signal,noise spectral density, transient markers, time of day of occurrence, oroccurrence patterns.

In another aspect, a noise profile generator is provided having at leastone processor and non-transitory computer readable media having encodedthereon computer software comprising a set of instructions. The set ofinstructions may be executable by the at least one processor toretrieve, via a noise information repository, extracted noiseinformation associated with a communication path between a communicationgateway and one or more end devices, utilizing a communication medium,determine whether at least one noise characteristic of the extractednoise information matches with one or more noise profiles at a noiseprofile database, generate, in response to determining that at least onenoise characteristic of the extracted noise information does not matchwith the one or more noise profiles, a new noise profile based on theextracted noise information, associate, at the noise profile database,at least one of the one or more end devices with the new noise profile,and identify, based on either the new noise profile or a matching noiseprofile of the one or more noise profiles, at least one noise source onthe communication path.

According to one set of embodiments, the communication medium may be oneof a power line at a customer premises, twisted pair cable, coaxialcable, or optical fiber. In other embodiments, the communication mediummay be a wireless connection for at least one of Wi-Fi, Bluetooth,infrared, near-field, or Z-Wave communications. In a further set ofembodiments, the set of instructions may further include instructionsthat cause the processor to identify, at the noise information database,existing noise information associated with the communication path,subtract the existing noise information from the extracted noiseinformation resulting in an added noise information, and generate, basedon the added noise information, an isolated noise profile associatedwith the new end device.

In another set of embodiments, the communication medium may utilize atransmission spectrum, wherein the transmission spectrum includes aplurality of sub-carrier channel, each sub-carrier channel spanning arespective frequency range within the transmission spectrum. The set ofinstructions may correspondingly include instructions that cause theprocessor to retrieve, via the noise information repository, extractednoise information respectively from each of the plurality of sub-carrierchannels, wherein the extracted noise information is extractedrespectively from each of the subcarrier channels, and determine, basedon the extracted noise information, a signal-to-noise ratio respectivelyfor each of the sub-carrier channels. In some embodiments, the noiseprofile generator may further cancel, from the extracted noiseinformation, a crosstalk noise, wherein the crosstalk noise of anear-end transceiver on the communication path is canceled with thecrosstalk noise of a corresponding far-end transceiver on thecommunication path.

In a further set of embodiments, the set of instructions may furtherinclude instructions that cause the processor to identify, based on thenew noise profile or the matching noise profile, at least one secondaryend device on a second communication path. In some embodiments, the atleast one noise characteristic may further include a frequency spectrumof the noise signal, power spectral density, transient markers, time ofday of occurrence, or occurrence patterns.

In another aspect, a method of noise profile generation is provided. Invarious embodiments, the method may include extracting, via an at leastone noise information node, noise information present on a communicationpath from the customer gateway to at least one of one or more enddevices, the communication path utilizing a communication medium,transmitting, via the at least one noise information node, the extractednoise information to a noise information repository, retrieving, via thenoise information repository, the extracted noise information associatedwith the communication path, determining, via a noise profile generator,whether at least one noise characteristic of the extracted noiseinformation matches with one or more noise profiles at a noise profiledatabase, wherein each of the one or more noise profiles comprises atleast one noise characteristic derived from noise information, whereineach of the one or more noise profiles is respectively associated withat least one noise source, generating, via the noise profile generator,in response to determining that at least one noise characteristic of theextracted noise information does not match with the one or more noiseprofiles, a new noise profile based on the extracted noise information,associating, at the noise profile database, at least one of the one ormore end devices with the new noise profile, and identifying, based oneither the new noise profile or a matching noise profile of the one ormore noise profiles, the at least one noise source on the communicationpath.

According to one set of embodiments, the method may further includeidentifying, via the at least one noise information node, a new enddevice connected to the communication path, identifying, at the noiseprofile database, existing noise information associated with thecommunication path, subtracting, via the noise profile generator, theexisting noise information from the extracted noise informationresulting in an added noise information, and generating, via the noiseprofile generator, an isolated noise profile associated with the new enddevice, based on the added noise information. In another set ofembodiments, the communication medium may include a transmissionspectrum, wherein the transmission spectrum includes a plurality ofsub-carrier channel, each sub-carrier channel spanning a respectivefrequency range within the transmission spectrum, the method furtherincluding retrieving, via the noise information repository, extractednoise information respectively from each of the plurality of sub-carrierchannels, wherein the extracted noise information is extractedrespectively from each of the subcarrier channels, and determining,based on the extracted noise information, a signal-to-noise ratiorespectively for each of the sub-carrier channels.

Various modifications and additions can be made to the embodimentsdiscussed without departing from the scope of the invention. Forexample, while the embodiments described above refer to particularfeatures, the scope of this invention also includes embodiments havingdifferent combination of features and embodiments that do not includeall of the above described features.

BRIEF DESCRIPTION OF THE DRAWINGS

A further understanding of the nature and advantages of particularembodiments may be realized by reference to the remaining portions ofthe specification and the drawings, in which like reference numerals areused to refer to similar components. In some instances, a sub-label isassociated with a reference numeral to denote one of multiple similarcomponents. When reference is made to a reference numeral withoutspecification to an existing sub-label, it is intended to refer to allsuch multiple similar components.

FIG. 1 is a schematic block diagram of a system for automatic noiseprofile generation, in accordance with various embodiments;

FIG. 2 is a schematic block diagram of a customer premises wired networktopology, in accordance with various embodiments;

FIG. 3 is a schematic block diagram of a customer premises wirelessnetwork topology, in accordance with various embodiments;

FIG. 4A is a flow diagram of a method for a system for automatic noiseprofile generation, in accordance with various embodiments;

FIG. 4B is a flow diagram of a method for isolating added noise from anewly connected device, in accordance with various embodiments;

FIG. 4C is a flow diagram of a method for automatic noise profilegeneration on a multi-carrier modulated communication medium, inaccordance with various embodiments; and

FIG. 5 is a schematic block diagram of computer hardware for a noiseprofile generator, in accordance with various embodiments.

DETAILED DESCRIPTION OF CERTAIN EMBODIMENTS

While various aspects and features of certain embodiments have beensummarized above, the following detailed description illustrates a fewexemplary embodiments in further detail to enable one of skill in theart to practice such embodiments. The described examples are providedfor illustrative purposes and are not intended to limit the scope of theinvention.

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the described embodiments. It will be apparent to oneskilled in the art, however, that other embodiments of the presentinvention may be practiced without some of these specific details. Inother instances, certain structures and devices are shown in blockdiagram form. Several embodiments are described herein, and whilevarious features are ascribed to different embodiments, it should beappreciated that the features described with respect to one embodimentmay be incorporated with other embodiments as well. By the same token,however, no single feature or features of any described embodimentshould be considered essential to every embodiment of the invention, asother embodiments of the invention may omit such features.

Unless otherwise indicated, all numbers herein used to expressquantities, dimensions, and so forth, should be understood as beingmodified in all instances by the term “about.” In this application, theuse of the singular includes the plural unless specifically statedotherwise, and use of the terms “and” and “or” means “and/or” unlessotherwise indicated. Moreover, the use of the term “including,” as wellas other forms, such as “includes” and “included,” should be considerednon-exclusive. Also, terms such as “element” or “component” encompassboth elements and components comprising one unit and elements andcomponents that comprise more than one unit, unless specifically statedotherwise.

FIG. 1 illustrates an automatic noise profile generation system 100, inaccordance with various embodiments. The system 100 includes a noiseprofile generator 105, noise profile database 110, service providernetwork 115, gateway 120, noise information repository 125, localnetwork 130, noise information nodes 135 a, 135 b, 135 n (collectively135), end devices 140 a, 140 b, 140 n (collectively 140), and one ormore external noise sources 145. In various embodiments, the automaticnoise profile generation system 100 may allow for the identification ofproblematic noise sources, and enable a targeted approach for improvingSNR and network performance based on an individual noise source or groupof noise sources 145.

According to various embodiments, the noise profile generator 105 may becommunicatively coupled to a noise profile database 110. In someembodiments, the noise profile database 110 may be hosted locally at thenoise profile generator 105, or alternatively, the noise profiledatabase 110 may be hosted on an external device. The noise profilegenerator 105 may further be communicatively coupled to a gateway device120 via service provider network 115. The gateway 120 may becommunicatively coupled to a noise information repository 125. Similarto the noise profile database 110, in some embodiments, the noiseinformation repository 125 may be hosted locally at the gateway 120,while in other embodiments the noise information repository 125 may behosted on an external device. For example, in various embodiments, thenoise profile database 110 or noise information repository 125 mayinclude, or be implemented in, hardware or software components of thenoise profile generator 105, or gateway 120, respectively. In one set ofembodiments, either of the noise profile database 110 or noiseinformation repository 125 may comprise a software application, or otherexecutable code for storing, accessing, and managing noise profiles andnoise information, respectively. In some embodiments, either of thenoise profile database 110 or information repository 125 may include,without limitation, a system on a chip (SoC), application specificintegrated circuit (ASIC), field programmable gate array (FPGA), orother similarly programmable embedded system programmed to store, allowaccess to, and manage noise profiles and noise information,respectively. In various further embodiments, an external device hostingthe noise profile database 110, or noise information repository 125, mayalso include similar hardware or software resources. The external devicemay include a computing device, separate from the noise profilegenerator 105 or gateway 120, such as, but not limited to, a databaseserver, application server, web server, a network drive, or othersimilar device that is accessibly by the noise profile generator 105 orgateway 120.

The gateway device 120 may further be communicatively coupled to one ormore end devices 140 via a local network 130, and through one or morenoise information nodes 135. In the embodiments depicted, the noiseinformation node 135 a allows end device 140 a through end device 140 nto connect to the local network 130, where the end device 140 nindicates a final end device of a of plurality of end devices 140connected to noise information node 135 a. In some embodiments, thenoise information node 135 a may provide communication functionality,such as routing and forwarding communications to and from the enddevices 140. In other embodiments, the noise information node 135 b maynot necessarily route or forward communications to the end devices 140,and may be coupled to a communication medium between end device 140 band local network 130, so as to be able to listen in on thecommunications. In yet further embodiments, the noise information node135 n may itself be an end device, in direct communication with thelocal network 130, to the gateway 120. In one set of embodiments, eachof the end devices 140 may further be connected to one or more other enddevices 140.

In various embodiments, customer premises equipment, including thegateway 120, one or more noise information nodes 135, and one or moreend devices 140 may further be in communication with, or affected by oneor more external noise sources 145. Thus, in one set of embodiments, theone or more external noise sources 145 may be separate from one or morecommunication paths connecting the gateway 120, via local network 130,to any of the noise information nodes 135 or end devices 140, yet stillthe one or more external noise sources 145 may still affectcommunications on the one or more communication paths. In otherembodiments, the external noise sources may be in communication with thecustomer premises equipment, including the gateway device 120, networkelements of the local network 130, the noise information nodes 135, orend devices 140.

In various embodiments, each of the one or more communication paths fromthe gateway 120 to noise information nodes 135 or end devices 140 mayutilize one or more communication media. For example, in someembodiments, each of the communication paths may utilize a commoncommunication medium, while in other embodiments each of thecommunication paths may utilize different communication mediums. In yetfurther embodiments, any single communication path may utilize acombination of different communication media.

For example, according to various sets of embodiments, the local network130 may include all or part of the communication paths to the noiseinformation nodes 135 or end devices 140. The local network 130 may be awired or wireless network, which includes wired and wirelesscommunication mediums. Wired communication networks may employ variouscommunication media, including, but not limited to, in-home power linesand power wiring for power line communications (PLC); twistedpair—including Cat 5, Cat 5e, Cat 6, other Ethernet cables, andtelephone cables; and optical fiber. Wireless communication networks mayemploy various communication media, including, but not limited to,Wi-Fi, Bluetooth, infrared, radio frequency (RF), and cellularcommunications. In some further embodiments, a combination of both wiredand wireless communication media may be utilized.

In various embodiments, end device 140 may be connected to one or morenoise information node 135, gateway 120, other end device 140, or anetwork element of local network 130, which include, but are not limitedto, routers, access points, and the like. The end devices 140 mayinclude, without limitation, any of a personal computer, set top box,voice over internet protocol (VoIP) phone, smart phone, tablet, laptopcomputer, or other computing device. In some embodiments, the enddevices 140 may further include, without limitation, smart appliances,smart thermostats, smart lights, and other home automation devices.

Similarly, in various embodiments, the one or more external noise source145 may be communicatively connected to one or more noise informationnode 135, gateway 120, other network elements of local network 130, orend devices 140. In one set of embodiments, the external noise sources145 may communicate over a wired connection, while in other embodiments,the external noise sources 145 may communicate wirelessly. In furthersets of embodiments, the external noise sources 145 may not be connectedto the local network 130, or by the gateway 120, one or more noiseinformation nodes 135, and end devices 140, or respective communicationmedia utilized by the local network 130, gateway 120, noise informationnodes 135, or end devices 140, but may emit signals that electricallyinterfere with the communication media.

As described above, in various embodiments, the noise information node135 may be a modem, network switch, hub, router, or access point of thelocal network 130. In some embodiments, the noise information node 135may itself be an end device. In further sets of embodiments, some or allof the noise information node 135 may be included in the gateway 120, ormay be included as part of a digital subscriber line access multiplexer(DSLAM), cable modem termination system (CMTS), optical network terminal(ONT), optical line termination (OLT), or other similar aggregatordevice for multiple subscriber premises. In yet further embodiments, thenoise information node 135 b may be a device dedicated to detecting linenoise on a communication medium. In each of the described embodiments,the noise information node 135 may be a computer system controlled bythe communications service provider, programmed to listen to, track,store, and manage noise information at a customer premises. In a furtherset of embodiments, the gateway 120 may include at least part of thenoise information node 135.

According to one set of embodiments, the gateway 120 may be a digitalsubscriber line (DSL) modem, set top box (STB), voice over internetprotocol (VoIP) gateway, or other customer premises device. In variousembodiments, the gateway 120 may employ discrete multitoned (DMT)modulation and demodulation techniques to transmit and receivecommunications, to and from a DSLAM, over a service provider network115. In various embodiments, the DSLAM, gateway 120, or both DSLAM andgateway 120 may include one or more vectoring engines. In suchembodiments, vectoring may be utilized by the DSLAM to implement selffar-end crosstalk (FEXT) cancellation techniques, also known asG.Vector, in DSL networks such as, without limitation, avery-high-bit-rate digital subscriber line 2 (VDSL2) networks, G.Fastnetworks, and other xDSL networks utilizing DMT modulation. In suchembodiments, the DSLAM, DSL modem, or both, may detect and cancel FEXTnoise by injecting an inverse to cancel the detected line noise. In someembodiments, the inverse noise signal may invert the polarity of thedetected line noise signal, while in other embodiments, the line noisesignal may be phase-shifted. In some further embodiments, the gatewaydevice 120 may further be able to detect line noise of a local network130 of the customer premises. For example, line noise, such as FEXTnoise introduced by the various end devices 140 may be measured fromwithin the local network 130. Thus, the DSLAM, gateway 120, or bothDSLAM and gateway 120 may further be capable of monitoring and measuringnoise information. As such, in one set of embodiments, the DSLAM orgateway 120 may further comprise at least part of the one or more of thenoise information repositories 135.

In various embodiments, the gateway 120 may optionally becommunicatively coupled to a noise information repository 125. The noiseinformation repository 125 may store the detected line noise, receivedfrom the gateway 120, as noise information in the noise informationrepository 125. In one set of embodiments, the noise information may bea snapshot of the vectoring engine of the gateway 120 or DSLAM. Invarious embodiments, noise information may include, respectively: thenoise signal itself, such as, without limitation, a noise signalwaveform; and information, attributes, and characteristics related tothe noise signal, such as, without limitation, a frequency spectrum ofthe noise signal, a noise spectral density, transient markers, a time ordate of occurrence, a range of times and dates of occurrence, oroccurrence patterns.

According to various embodiments, the noise profile generator 105 mayinclude dedicated hardware or software running on a dedicated device, ormay be software that is executable on existing network hardware. Forexample, in one set of embodiments, the noise profile generator 105 mayinclude, or be hosted by, a dedicated server, such as an applicationserver or web server. In a further set of embodiments, the noise profilegenerator 105 may include application specific embedded systems,including, without limitation, an ASIC, SoC, or FPGA based device. Inother sets of embodiments, the noise profile generator 105 may beincluded in or executed on, without limitation, a DSLAM, optical linetermination, a cellular tower or base station, a wireless access point,or other suitable device for receiving noise information from one ormore subscribers, as reported via respective subscriber gateways 120 foreach of the one or more subscribers.

In various embodiments, the noise profile generator 105 may include oneor more microprocessors, and non-transitory computer readable media, andbe programmed to perform various processes in the automatic generationof a noise profile from noise information. For example, in one set ofembodiments, the noise profile generator 105 may be programmed toretrieve, from the gateway 120, or in some embodiments, the noiseinformation repository 125 associated with the gateway 120, noiseinformation for a customer premises associated with the gateway. Thenoise information stored in the noise information repository 125 mayinclude the noise information detected and reported by the one or morenoise information nodes 135. For example, in some embodiments, the noiseinformation may include line noise detected by noise information node135 a, on a communication path between the gateway 120 and one or moreend devices 140 a, 140 n in communication with the gateway 120 throughnoise information node 135 a. Thus, noise information node 135 a maymeasure and record line noise for any of the communication paths betweenthe gateway 120 to each of end device 140 a through end device 140 n,between noise information node 135 a and each of end device 140 athrough 140 n, between the gateway 120 and noise information node 135 a,and between each of the end devices 140 a-140 n. In an alternativearrangement, noise information node 135 b may directly monitor linenoise on the communication path between an end device 140 b in directlycommunication with gateway 120 through local network 130. In yet anotherset of embodiments, the noise information node 135 n itself may be anend device and detect line noise on the communication between itself andthe gateway 120.

In various embodiments, the noise information node 135 may include, inaddition to the detected line noise, additional information, attributes,and characteristics regarding the line noise, such as a noise signalwaveform; and information, attributes, and characteristics related tothe noise signal, such as, without limitation, a frequency spectrum ofthe noise signal, a noise spectral density, transient markers, a time ordate of occurrence, a range of times and dates of occurrence, oroccurrence patterns. The measured line noise itself, together with theadditional information, attributes, characteristics, and measurements,may be packaged by the noise information node 135 and transmitted asnoise information. In one set of embodiments, each of the noiseinformation nodes 135 may transmit the noise information to the gatewaydevice 120 to be stored in noise information repository 125. In otherembodiments, the noise information nodes 135 may be able to report noiseinformation directly to the noise profile generator 105, and the noiseprofile generator 105 may likewise be able to retrieve noise informationdirectly from the noise information node 135.

In various embodiments, once the noise information has been retrieved,the noise profile generator 105 may determine, for the particular noiseinformation, if a noise profile exists in the noise profile database 110that has at least one matching noise characteristic with the noiseinformation. If no such noise profile exists, the noise profilegenerator 105 may generate a noise profile based on the noiseinformation. In various embodiments, the noise profile, in addition toincluding the noise information, may include at least one of anidentifier for the subscriber or customer premises, an identifier for atleast one end device associated with the communication path from whichthe noise information was extracted from, a type of end device such as amodel or manufacturer, identified changes to end devices sharing thecommunication medium, changes to a segment of the communication path, orthe type of communication medium utilized on the communication path. Ifa matching noise profile is found in the noise profile database 110, thenoise profile generator 105 may instead identify one of the associatedend device 140, end device 140 type, identified end device changessharing the communication path or communication medium, changes to thecommunication path itself, or type of communication medium utilized ascommon to any of the end device, communication path, or communicationmedium from which the noise information was extracted. In this manner, anoise source may be identified as, for example, the external noisesource 145, or one of the end devices 140.

External noise sources 145 may include, without limitation, householddevices and appliances, such as microwave ovens, cordless phones, babymonitors, radio transmitters, peripheral devices and accessories,Bluetooth devices, remote controls, car alarms, home security andsurveillance systems, and other similar devices. Therefore, in variousembodiments, the one or more external noise sources 145 may be devicesconnected to one or more of the gateway 120, local network 130, noiseinformation nodes 135, or end devices 140. The one or more externalnoise sources 145 may be connected to, or in communication with, thegateway 120 directly, local network 130, noise information nodes 135, orend devices 140. For example, in some embodiments, a direct connectionfrom the one or more external noise sources 145 may include both wiredand wireless connections over which the one or more external noisesources 145 may communicate, or otherwise interfere with. For example,in some embodiments, the one or more external noise sources 145 maycommunicate wirelessly with one or more end devices 140, such aswireless keyboards, mice, and other peripherals, that may interfere withother wireless communications between the one or more end devices 140,with the gateway 120, or other local network 130.

In other embodiments, the one or more external noise sources 145 mayonly indirectly affect communications to and from the gateway 120directly, local network 130, noise information nodes 135, end devices140, or the communication media carrying these communications. Forexample, in some embodiments, the one or more external noise sources 145may emit RF noise, such as in the case of microwave oven, high frequencytransceivers, electric motors, and certain fluorescent light fixtures.Alternatively, line noise may be caused through capacitive, inductive,or conductive effects, and co-channel interference, as in the crosstalknoise, or from adjacent channel interference effects. In a further setof embodiments, the external noise source 145 may itself be one of theend devices 140, or a component of a network device of local network 130or gateway 120.

In various embodiments, all or part of the automatic noise profilegeneration system 100 may be implemented as part of a software definednetwork (SDN), network function virtualization (NFV), or cloud networkenvironment. For example, in some embodiments, any of the noise profilegenerator 105, noise profile database 110, service provider network 115,gateway 120, noise information repository 125, local network 130, noiseinformation nodes 135, end devices 140, or external noise sources 145may be implemented as a virtual machine, as part of a virtualizednetwork, or as a resource available on a cloud network. In some furtherembodiments, one or more of the capabilities provided by any of thenoise profile generator 105, noise profile database 110, serviceprovider network 115, gateway 120, noise information repository 125,local network 130, noise information nodes 135, end devices 140, orexternal noise sources 145 may be provided as a virtualized networkfunction.

FIG. 2 illustrates a customer premises facing arrangement for a system200 for automatic noise profile generation, in accordance with variousembodiments. The system 200 may include a communication medium 205, oneor more noise information nodes 210 a-210 n (collectively 210), enddevices 215 a, 215 b, wall outlets 220 a, 220 b, appliance 225, one ormore external noise sources 230, and gateway 235. In variousembodiments, the system 200 may be a customer premises facing localnetwork through which a subscriber's end devices 215 a, 215 b andappliances 225 may be connected to a gateway 235.

According to a set of embodiments, the system 200 may be a wiredcommunications network utilizing as a communication medium 205, withoutlimitation, a suitable twisted pair cabling such as Category 5, 5e, and6 Ethernet Cables; telephone lines; DSL lines; coaxial cabling; opticalfiber, or other suitable communication. In other embodiments, the system200 may be a PLC network, utilizing in-home electrical wiring for powerof a customer's premises. In such embodiments, the in-home electricalwiring may be used as the communication medium 205 including, withoutlimitation, various heat and water resistant, insulated copper oraluminum wire cabling, or wire cabling using another suitable conductor.

Accordingly, in embodiments utilizing an Ethernet or other wiredcommunications network, the noise information node 210 a may include,without limitation, a router, modem, switch, forwarder, access point, orother communication hub through which the end devices 215 a, 215 b maybe able to communicate with the gateway 235. In other sets ofembodiments, the noise information nodes 210 may be a power linecommunication adapter, a smart power outlet, or a separate dedicateddevice communicatively coupled to the communication medium 205. In yetfurther embodiments, the noise information node 210 n may itself be anend device 215, 225. In various embodiments, household appliance 225 maybe an end device 215 communicating over communication medium 205. Forexample, the household appliance 225 may include, without limitation,smart thermostats, smart lights, smart refrigerators, or other smartappliances and home automation devices.

In some embodiments, the noise information node 210 may be a hub throughwhich communications to and from the end devices 215 may be conducted,and to which each of the end devices may be connected. Alternatively, insome embodiments, the noise information node may be a dedicated devicecommunicatively coupled to the communication path to and from an enddevice 215, 225. Accordingly, the noise information nodes 210 may beable to identify noise information on the communication path to and fromend devices 215, 225, between the end devices 215, 225 and with thegateway 235.

In various embodiments, external noise sources 230 may include, withoutlimitation, end devices and appliances, such as microwave ovens,cordless phones, baby monitors, radio transmitters, peripheral devicesand accessories, Bluetooth devices, remote controls, car alarms, homesecurity and surveillance systems, and other similar devices. Therefore,in various embodiments, the one or more external noise sources 230 maybe devices connected to one or more of the gateway 235, noiseinformation nodes 210, or end devices 215. In other embodiments, theexternal noise sources 230 may include, in some embodiments, anappliance 225 or other device coupled to the communication medium 205 toreceive power through outlets 220 a, 220 b causing noise on thecommunication medium 205. In some further embodiments, the one or moreexternal noise sources 230 may include other devices, such as nearbyelectric motors, cell towers, radio or television towers, or otherhigh-power RF transmitters that may cause line noise in a wiredcommunication medium 205.

FIG. 3 illustrates a customer premises facing arrangement for a system300 for automatic noise profile generation in a wireless environment, inaccordance with various embodiments. The system 300 may include acommunication gateway 305, noise information node 310, end devices 315a-315 n (315 collectively), and external noises sources 320 a-320 n (320collectively). In various embodiments, the system 300 may include awireless local network through which a subscriber's end devices 315 maybe connected to the gateway 305.

According to various embodiments, the wireless local network may employvarious communication media, including, but not limited to, Wi-Fi,Bluetooth, infrared, radio frequency (RF), and cellular communications.In some further embodiments, a combination of both wired and wirelesscommunication media may be utilized. Accordingly, in one set ofembodiments, the end devices 315 may be in communication with gateway305 via noise information node 310, with noise information node 310acting as a communication hub between the end devices 315 and gateway305. For example, the noise information node 310 may include, withoutlimitation, a wireless router or wireless access point. In otherembodiments, alternative configurations may provide for the end devices315 to be in direct communication with the gateway 305, with noiseinformation node 310 communicatively coupled to the communication pathbetween the end devices 315 and gateway 305 to listen to signal noiseover the communication path. For example, in various embodiments, thecommunication path may include one or more subcarrier channels, utilizedby each of the end devices 315 a-315 n, on which the noise informationnode 310 may monitor and detect signal noise. Accordingly, in one set ofembodiments, the system 300 may be utilized, for example, by a serviceprovider or customer representative, to help a customer to diagnose andtroubleshoot connection issues on a subscriber's home network, as willbe described in more detail below with respect to FIGS. 4A-4C.

The one or more external noise sources 320 a may be a noise sourceoriginating from outside of the local network, such as radio broadcastsand transmissions causing noise or interference on the frequencyspectrum of the communication medium used by the wireless local network.The one or more noise sources 320 n, in contrast, may include variousdevices in direct communication with any of the end devices 315, noiseinformation node 310, or gateway 305. For example, in variousembodiments, the one or more external noise sources 320 n may include,without limitation, one or more other end devices 315, or a deviceconnected to one of the end devices 315, noise information node 310, orgateway 305 directly.

FIG. 4A is a flow diagram of a method 400A for a system for automaticnoise profile generation, in accordance with various embodiments. Themethod 400 begins, at block 401, by extracting, via a noise informationnode, noise information present on a communication path. In variousembodiments, the noise information node may extract noise informationfrom one or more different communication paths, including, withoutlimitation, communication paths between the gateway and an end device;two different end devices; or an end device and a communication hub,such as a router, access point, or network switch. The variouscommunication paths may further encompass various communication mediafor carrying wired and wireless communications. In various embodiments,the noise information may include, the noise signal itself, as detectedon the communication path, such as, without limitation, a noise signalwaveform; and information, attributes, and characteristics related tothe noise signal, such as, without limitation, a frequency spectrum ofthe noise signal, a noise spectral density, transient markers, a time ordate of occurrence, a range of times and dates of occurrence, oroccurrence patterns. In one set of embodiments, the noise informationmay be a snapshot of a vectoring engine implemented on a DSLAM, CMTS, orgateway.

At block 403, the extracted noise information may be transmitted, by thenoise information node, to a noise information repository. In variousembodiments, the noise information repository may be accessible througha residential or commercial gateway. In one set of embodiments, thenoise information repository may be hosted locally at the gateway. Inother embodiments, the noise information repository may be hosted on anexternal device. As described with respect to the embodiments above, thenoise information repository may include hardware, software, or acombination of both, operable to store, access, and manage noiseinformation received from the noise information node, or multiple noiseinformation nodes. Accordingly, the noise information repository maystore noise information received from one or more noise informationnodes, for one or more communication paths respectively.

At decision block 405, a noise profile generator may determine whetherthe noise information retrieved from the noise information repositorymatches any of the noise profiles on a noise profile database. Forexample, in one set of embodiments, once the noise profile generator hasretrieved the noise information, the noise profile generator maydetermine, for the noise information, if a noise profile exists in thenoise profile database that has at least one noise characteristic incommon with the a noise characteristic of the noise information. Invarious embodiments, the noise profile, in addition to including thenoise information, may include at least one of an identifier for thesubscriber or customer premises, location information regarding thecustomer premises, an identifier for at least one end device associatedwith the communication path from which the noise information wasextracted from, a type of end device, a model or manufacturer of the enddevice, an inventory of end devices connected to the communicationmedium, individual segments between nodes of the communication path, orthe type of communication medium utilized on the communication path. Invarious embodiments, the location information may include, withoutlimitation, geographic coordinates specifying the latitudinal andlongitudinal positions of the customer premises. The end deviceidentifier may include, without limitation, a serial number such as anelectronic serial number (ESN) or international mobile equipmentidentity (IMEI), a hardware address such as a media access control (MAC)address, network address, a user name, ID or profile, or other suitabletechniques known to those skilled in the art.

At block 407, if no such noise profile exists, the noise profilegenerator may generate a new noise profile based on the noiseinformation. For example, at block 409, the noise profile generator mayassociate at least one of the one or more end devices with the noiseprofile. In various embodiments, the noise profile generator maydetermine, based on the noise information, or as indicated by thegateway, each of the one or more end devices associated with thecommunication path from which the noise information was extracted. Anend device identifier for each of the identified end devices may then beassociated with the noise information in the noise profile. In somefurther embodiments, end device identifiers for each end devicecommunicatively coupled to the communication medium may also beassociated with the noise information in the noise profile.

If a matching noise profile is found in the noise profile database, atblock 411, the noise profile generator may then identify an at least onenoise source for the noise information based on the noise profile. Forexample, in one set of embodiments, the noise profile generator maydetermine that at least one noise characteristic of the noiseinformation matches with a noise characteristic of the noise profile.The noise profile generator may then identify, in the noise profile, atleast one of an identifier for the subscriber or customer premises,location information regarding the customer premises, an identifier forat least one end device associated with the communication path fromwhich the noise information was extracted from, a type of end device, amodel or manufacturer of the end device, an inventory of end devicesconnected to the communication medium, individual segments between nodesof the communication path, or the type of communication medium utilizedon the communication path. The noise profile generator may thenidentify, at least one end device, on the customer premises, that isassociated with the communication path or communication medium fromwhich the noise information was extracted, or location information ofthe customer premises. The noise profile generator may utilize anycommon end devices, or geographic proximity of the customer premises, toidentify at least one noise source for the noise information.

FIG. 4B is a flow diagram of a method 400B of isolating added noise froma newly connected device in a system for automatic noise profilegeneration, in accordance with various embodiments. At block 413, a newend device that has been connected to the communication path orcommunication medium is identified. In various embodiments, the noiseinformation node, gateway, noise profile generator, or a combination ofsome or all of the noise information node, gateway, and noise profilegenerator, may identify a unique identifier of the newly connected enddevice.

At block 415, the unique identifier of the new end device may beassociated with the extracted noise information. As described above withrespect to FIG. 4A, the unique identifier may include any of a serialnumber such as an electronic serial number (ESN) or international mobileequipment identity (IMEI), a hardware address such as a media accesscontrol (MAC) address, network address, a user name, user profile, orother suitable techniques known to those skilled in the art.

At block 417, existing noise information, associated with thecommunication path, may be subtracted from the extracted noiseinformation. In various embodiments, existing noise information,associated with the communication path, may be identified based onsubscriber information, location information for the customer premises,or other suitable information that may be included in at least one ofthe existing noise information or noise profile. In one set ofembodiments, a noise signal associated with the existing noiseinformation may be subtracted from a noise signal associated with theextracted noise information. In another set of embodiments, somefrequency components of the noise signal may be suppressed based onnoise characteristics of the existing noise information, such as a noisespectral density of the existing noise signal.

At block 419, an isolated noise profile may be generated from theresulting noise signal. In various embodiments, the resulting noisesignal may result in the added noise signal from the new end device.Accordingly, the isolated noise profile may be generated, based on theadded noise signal, characterizing noise added by the new end device tothe communication path.

FIG. 4C is a flow diagram of a method 400C for automatic noise profilegeneration on a multi-carrier modulated communication medium, inaccordance with various embodiments. The method 400C begins, at block421, by retrieving the extracted noise information from each of aplurality of sub-carrier channels of a communication path orcommunication medium. In various embodiments, the communication mediumor communication path may use DMT modulation and demodulation techniquesto transmit and receive communications. For example, in one set ofembodiments, the communication medium may include a transmissionspectrum, which may be divided into a plurality of smaller frequencybands, or sub-carrier channels, over the communications may take placecontemporaneously between the DSLAM and multiple gateways such as DSLmodems, or the DSL modem and multiple end devices. In variousembodiments, instead of a DSL environment utilizing DMT, thecommunication path or communication medium may instead utilize anorthogonal frequency division multiplexing (OFDM) scheme for dividingthe frequency spectrum into a plurality of sub-carrier channels. Forexample, OFDM may be utilized for communication channels for, withoutlimitation, cellular data communications, and communications utilizingworldwide interoperability for microwave access (WiMAX), long termevolution (LTE), Wi-Fi, or other standards. Thus, the communication pathmay include any paths taken by wireless transmissions to and from asuitable orthogonal frequency division multiple access (OFDMA) receiver.Accordingly, in various embodiments, the gateway, noise informationnode, or both, may be DMT or OFDMA wireless transceivers.

At block 423, a respective SNR may be determined for each of theplurality of subcarrier channels. In various embodiments, based on theSNR, the noise profile generator may further identify which sub-carrierchannel of the plurality of sub-carrier channels is most affected by thenoise signal. In further embodiments, the noise profile generator mayfurther determine, based on the sub-carrier channel, an at least onenoise source for signal noise. In a further set of embodiments, the SNRfor multiple sub-carrier channels may be used to more accuratelydetermine the noise source.

FIG. 5 is a schematic block diagram of a computer architecture for anoise profile generator, in accordance with various embodiments. FIG. 5provides a schematic illustration of one embodiment of a computer system500 that can perform the methods provided by various other embodiments,as described herein, and/or can perform the functions noise profilegenerator, noise information node, gateway, end device, or any othercomputer systems as described above. It should be noted that FIG. 5 ismeant only to provide a generalized illustration of various components,of which one or more (or none) of each may be utilized as appropriate.FIG. 5 , therefore, broadly illustrates how individual system elementsmay be implemented in a relatively separated or integrated manner.

The computer system 500 includes a plurality of hardware elements thatcan be electrically coupled via a bus 505 (or may otherwise be incommunication, as appropriate). The hardware elements may include one ormore processors 510, including, without limitation, one or moregeneral-purpose processors and/or one or more special-purpose processors(such as digital signal processing chips, graphics accelerationprocessors, and/or the like). In general, embodiments can employ as aprocessor any device, or combination of devices, that can operate toexecute instructions to perform functions as described herein. Merely byway of example, and without limitation, any microprocessor (alsosometimes referred to as a central processing unit, or CPU) can be usedas a processor, including without limitation one or more complexinstruction set computing (CISC) microprocessors, such as the singlecore and multicore processors available from Intel Corporation™ andothers, such as Intel's X86 platform, including, e.g., the Pentium™,Core™, and Xeon™ lines of processors. Additionally and/or alternatively,reduced instruction set computing (RISC) microprocessors, such as theIBM Power™ line of processors, processors employing chip designs by ARMHoldings™, and others can be used in many embodiments. In furtherembodiments, a processor might be a microcontroller, embedded processor,embedded system, SoC or the like.

As used herein, the term “processor” can mean a single processor orprocessor core (of any type) or a plurality of processors or processorcores (again, of any type) operating individually or in concert. Merelyby way of example, the computer system 500 might include ageneral-purpose processor having multiple cores, a digital signalprocessor, and a graphics acceleration processor. In other cases, thecomputer system might 500 might include a CPU for general purpose tasksand one or more embedded systems or microcontrollers, for example, torun real-time functions. The functionality described herein can beallocated among the various processors or processor cores as needed forspecific implementations. Thus, it should be noted that, while variousexamples of processors 510 have been described herein for illustrativepurposes, these examples should not be considered limiting.

The computer system 500 may further include, or be in communicationwith, one or more storage devices 515. The one or more storage devices515 can comprise, without limitation, local and/or network accessiblestorage, or can include, without limitation, a disk drive, a drivearray, an optical storage device, a solid-state drive, flash-basedstorage, or other solid-state storage device. The solid-state storagedevice can include, but is not limited to, one or more of a randomaccess memory (RAM) or a read-only memory (ROM), which can beprogrammable, flash-updateable, or the like. Such storage devices may beconfigured to implement any appropriate data stores, including, withoutlimitation, various file systems, database structures, or the like.

The computer system 500 might also include a communications subsystem520, which can include, without limitation, a modem, a network card(wireless or wired), a wireless programmable radio, or a wirelesscommunication device. Wireless communication devices may furtherinclude, without limitation, a Bluetooth device, an 802.11 device, aWiFi device, a WiMax device, a WWAN device, cellular communicationfacilities, or the like. The communications subsystem 520 may permitdata to be exchanged with a customer premises, residential gateway,authentication server, a customer facing cloud server, networkorchestrator, host machine servers, other network elements, orcombination of the above devices, as described above. Communicationssubsystem 520 may also permit data to be exchanged with other computersystems, and/or with any other devices described herein, or with anycombination of network, systems, and devices. According to someembodiments, the network might include a local area network (LAN),including without limitation a fiber network, or an Ethernet network; awide-area network (WAN); a wireless wide area network (WWAN); a virtualnetwork, such as a virtual private network (VPN); the Internet; anintranet; an extranet; a public switched telephone network (PSTN); aninfrared network; a wireless network, including without limitation anetwork operating under any of the IEEE 802.11 suite of protocols, theBluetooth protocol, or any other wireless protocol; or any combinationof these or other networks.

In many embodiments, the computer system 500 will further comprise aworking memory 525, which can include a RAM or ROM device, as describedabove. The computer system 500 also may comprise software elements,shown as being currently located within the working memory 525,including an operating system 530, device drivers, executable libraries,and/or other code. The software elements may include one or moreapplication programs 535, which may comprise computer programs providedby various embodiments, and/or may be designed to implement methodsand/or configure systems provided by other embodiments, as describedherein. Merely by way of example, one or more procedures described withrespect to the method(s) discussed above might be implemented as codeand/or instructions executable by a computer (and/or a processor withina computer); in an aspect, then, such code and/or instructions can beused to configure and/or adapt a general purpose computer (or otherdevice) to perform one or more operations in accordance with thedescribed methods.

A set of these instructions and/or code might be encoded and/or storedon a non-transitory computer readable storage medium, such as thestorage device(s) 525 described above. In some cases, the storage mediummight be incorporated within a computer system, such as the system 500.In other embodiments, the storage medium might be separate from acomputer system (i.e., a removable medium, such as a compact disc,etc.), and/or provided in an installation package, such that the storagemedium can be used to program, configure and/or adapt a general purposecomputer with the instructions/code stored thereon. These instructionsmight take the form of executable code, which is executable by thecomputer system 500 and/or might take the form of source and/orinstallable code, which, upon compilation and/or installation on thecomputer system 500 (e.g., using any of a variety of generally availablecompilers, installation programs, compression/decompression utilities,etc.) then takes the form of executable code.

It will be apparent to those skilled in the art that substantialvariations may be made in accordance with specific requirements. Forexample, customized hardware (such as programmable logic controllers,field-programmable gate arrays, application-specific integratedcircuits, and/or the like) might also be used, and/or particularelements might be implemented in hardware, software (including portablesoftware, such as applets, etc.), or both. Further, connection to othercomputing devices such as network input/output devices may be employed.

As mentioned above, in one aspect, some embodiments may employ acomputer system (such as the computer system 500) to perform methods inaccordance with various embodiments of the invention. According to a setof embodiments, some or all of the procedures of such methods areperformed by the computer system 500 in response to processor 510executing one or more sequences of one or more instructions (which mightbe incorporated into the operating system 530 and/or other code, such asan application program 535) contained in the working memory 525. Suchinstructions may be read into the working memory 525 from anothercomputer readable medium, such as one or more of the storage device(s)515. Merely by way of example, execution of the sequences ofinstructions contained in the working memory 525 might cause theprocessor(s) 510 to perform one or more procedures of the methodsdescribed herein.

The terms “machine readable medium” and “computer readable medium,” asused herein, refer to any medium that participates in providing datathat causes a machine to operation in a specific fashion. In anembodiment implemented using the computer system 500, various computerreadable media might be involved in providing instructions/code toprocessor(s) 510 for execution and/or might be used to store and/orcarry such instructions/code (e.g., as signals). In manyimplementations, a computer readable medium is a non-transitory,physical and/or tangible storage medium. In some embodiments, a computerreadable medium may take many forms, including but not limited to,non-volatile media, volatile media, or the like. Non-volatile mediaincludes, for example, optical and/or magnetic disks, such as thestorage device(s) 515. Volatile media includes, without limitation,dynamic memory, such as the working memory 525.

Common forms of physical and/or tangible computer readable mediainclude, for example, a floppy disk, a flexible disk, a hard disk,magnetic tape, or any other magnetic medium, a CD-ROM, any other opticalmedium, punch cards, paper tape, any other physical medium with patternsof holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chipor cartridge, a carrier wave as described hereinafter, or any othermedium from which a computer can read instructions and/or code.

Various forms of computer readable media may be involved in carrying oneor more sequences of one or more instructions to the processor(s) 510for execution. Merely by way of example, the instructions may initiallybe carried on a magnetic disk and/or optical disc of a remote computer.A remote computer might load the instructions into its dynamic memoryand send the instructions as signals over a transmission medium to bereceived and/or executed by the computer system 500. These signals,which might be in the form of electromagnetic signals, acoustic signals,optical signals and/or the like, are all examples of carrier waves onwhich instructions can be encoded, in accordance with variousembodiments of the invention.

The communications subsystem 520 (and/or components thereof) generallywill receive the signals, and the bus 505 then might carry the signals(and/or the data, instructions, etc. carried by the signals) to theprocessor(s) 510, or working memory 525, from which the processor(s) 510retrieves and executes the instructions. The instructions received bythe working memory 525 may optionally be stored on a storage device 515either before or after execution by the processor(s) 510.

According to a set of embodiments, the computer system 500 may be anoise profile generator in communication with a noise informationrepository, noise information node, noise profile database, and one ormore end devices. In various embodiments, each of the noise informationrepository, noise information node, noise profile database, and one ormore end devices may themselves include one or more hardware elementssimilar to computer system 500.

According to various sets of embodiments, the computer system 500 mayinclude computer readable media, having stored thereon a plurality ofinstructions, which, when executed by the processor 510, allows thecomputer system 500 to retrieve, from a noise information repository,and via the communications subsystem 520, extracted noise informationassociated with a communication path between a gateway and one or moreend devices utilizing a communication medium. The computer system 500may determine whether at least one noise characteristic of the extractednoise information matches with one or more noise profiles at a noiseprofile database. In response to determining that at least one noisecharacteristic of the extracted noise information does not match withthe one or more noise profiles, the computer system may generate a newnoise profile based on the extracted noise information. The noiseprofile database may then associate, at the noise profile database, atleast one of the one or more end devices with the new noise profile.Based on either the new noise profile or a matching noise profile of theone or more noise profiles, the computer system may identify at leastone noise source on the communication path. In one set of embodiments,the communication medium may be one of a power line at a customerpremises, twisted pair cable, coaxial cable, or optical fiber. In otherembodiments, the communication medium may be a wireless connection forat least one of Wi-Fi, Bluetooth, infrared, near-field, or Z-Wavecommunications. According to a set of embodiments, the at least onenoise characteristic may include a frequency spectrum of the noisesignal, power spectral density, transient markers, time of day ofoccurrence, or occurrence patterns. In a further set of embodiments, thecomputer system 500 may further be programmed to identify, based on thenew noise profile or the matching noise profile, at least one secondaryend device on a second communication path.

In another set of embodiments, the computer system 500 may include inthe computer readable media further instructions to identify, at thenoise information database, existing noise information associated withthe communication path. The computer system 500 may subtract theexisting noise information from the extracted noise informationresulting in an added noise information, and generate, based on theadded noise information, an isolated noise profile associated with thenew end device.

According to yet further sets of embodiments, the communication mediummay comprise a transmission spectrum, wherein the transmission spectrumincludes a plurality of sub-carrier channel, each sub-carrier channelspanning a respective frequency range within the transmission spectrum.The computer system 500 may include further instructions to retrieve,via the noise information repository, extracted noise informationrespectively from each of the plurality of sub-carrier channels, whereinthe extracted noise information is extracted respectively from each ofthe subcarrier channels. Then, based on the extracted noise information,the computer system 500 may determine, based on the extracted noiseinformation, a signal-to-noise ratio respectively for each of thesub-carrier channels. The computer system 500 may further be programmedto cancel, from the extracted noise information, a crosstalk noise,wherein the crosstalk noise of a near-end transceiver on thecommunication path is canceled with the crosstalk noise of acorresponding far-end transceiver on the communication path.

While certain features and aspects have been described with respect toexemplary embodiments, one skilled in the art will recognize thatnumerous modifications are possible. For example, the methods andprocesses described herein may be implemented using hardware components,software components, and/or any combination thereof. Further, whilevarious methods and processes described herein may be described withrespect to particular structural and/or functional components for easeof description, methods provided by various embodiments are not limitedto any particular structural and/or functional architecture, but insteadcan be implemented on any suitable hardware, firmware, and/or softwareconfiguration. Similarly, while certain functionality is ascribed tocertain system components, unless the context dictates otherwise, thisfunctionality can be distributed among various other system componentsin accordance with the several embodiments.

Moreover, while the procedures of the methods and processes describedherein are described in a particular order for ease of description,unless the context dictates otherwise, various procedures may bereordered, added, and/or omitted in accordance with various embodiments.Moreover, the procedures described with respect to one method or processmay be incorporated within other described methods or processes;likewise, system components described according to a particularstructural architecture and/or with respect to one system may beorganized in alternative structural architectures and/or incorporatedwithin other described systems. Hence, while various embodiments aredescribed with—or without—certain features for ease of description andto illustrate exemplary aspects of those embodiments, the variouscomponents and/or features described herein with respect to a particularembodiment can be substituted, added, and/or subtracted from among otherdescribed embodiments, unless the context dictates otherwise.Consequently, although several exemplary embodiments are describedabove, it will be appreciated that the invention is intended to coverall modifications and equivalents within the scope of the followingclaims.

What is claimed is:
 1. A system for noise profile generation comprising:a customer gateway communicatively coupled to one or more end devicesover a communication medium; at least one noise information node, eachof the at least one noise information node communicatively coupled tothe customer gateway, wherein each of the at least one noise informationnode is programmed to extract an extracted noise information present ona communication path from the customer gateway to at least one of theone or more end devices, wherein each of the at least one noiseinformation node has a first unique identifier and is further programmedto identify a new end device connected to the communication path; anoise profile database storing one or more noise profiles, wherein eachof the one or more noise profiles is respectively associated with atleast one noise source; and a noise profile generator comprising: atleast one processor; non-transitory computer readable media havingencoded thereon computer software comprising a set of instructionsexecutable by the at least one processor to: based on an identification,by the at least one noise information node, that the new end device hasbeen connected to the communication path, identify, based on acorresponding first unique identifier associated with the at least onenoise information node and at the noise profile database, existing noiseinformation associated with the communication path, associate a secondunique identifier of the new end device with the extracted noiseinformation, subtract the existing noise information from the extractednoise information resulting in an added noise information, generate,based on the added noise information, an isolated noise profileassociated with the new end device, retrieve, from the at least onenoise information node, the extracted noise information associated withthe communication path, determine whether the at least one noisecharacteristic of the extracted noise information matches with one ormore noise profiles at the noise profile database, generate, in responseto determining that at least one noise characteristic of the extractednoise information does not match with the one or more noise profiles, anew noise profile based on the extracted noise information, associate,at the noise profile database, at least one of the one or more enddevices with the new noise profile, and identify, based on either thenew noise profile or a matching noise profile of the one or more noiseprofiles, the at least one noise source on the communication path. 2.The system of claim 1, wherein the communication medium is one of apower line at a customer premises, twisted pair cable, coaxial cable, oroptical fiber.
 3. The system of claim 1, wherein the communicationmedium is a wireless connection for at least one of Wi-Fi, Bluetooth,infrared, near-field, or Z-Wave communications.
 4. The system of claim1, wherein the communication medium comprises a transmission spectrum,wherein the transmission spectrum includes a plurality of sub-carrierchannels, each sub-carrier channel spanning a respective frequency rangewithin the transmission spectrum, wherein each of the at least one noiseinformation node is a wireless transceiver programmed to: receive, fromthe customer gateway, a signal on each of the plurality of sub-carrierchannels, wherein the extracted noise information is extractedrespectively from each of the plurality of subcarrier channels; anddetermine, based on the extracted noise information, a signal-to-noiseratio respectively for each of the sub-carrier channels.
 5. The systemof claim 4, wherein the transceiver includes at least one of a discretemultitone (DMT) receiver or orthogonal frequency division multipleaccess (OFDMA) receiver.
 6. The system of claim 1, wherein the set ofinstructions of the noise profile generator further comprisesinstructions that cause the processor to: identify, based on the newnoise profile or the matching noise profile, at least one secondary enddevice on a second communication path.
 7. The system of claim 1, whereinthe extracted noise information comprises at least one noisecharacteristic, wherein the at least one noise characteristic includes afrequency spectrum of the noise signal, noise spectral density,transient markers, time of day of occurrence, or occurrence patterns. 8.A noise profile generator, comprising: at least one processor;non-transitory computer readable media having encoded thereon computersoftware comprising a set of instructions executable by the at least oneprocessor to: based on an identification, by at least one noiseinformation node, of a new end device that has been connected to acommunication path, identify, based on a corresponding first uniqueidentifier associated with the at least one noise information node andat a noise profile database, existing noise information associated withthe communication path, associate a second unique identifier of the newend device with the extracted noise information, subtract the existingnoise information from extracted noise information resulting in an addednoise information, generate, based on the added noise information, anisolated noise profile associated with the new end device, retrieve, viaa noise information repository, extracted noise information associatedwith the communication path between a communication gateway and one ormore end devices, utilizing a communication medium, determine whether atleast one noise characteristic of the extracted noise informationmatches with one or more noise profiles at the noise profile database,generate, in response to determining that at least one noisecharacteristic of the extracted noise information does not match withthe one or more noise profiles, a new noise profile based on theextracted noise information, associate, at the noise profile database,at least one of the one or more end devices with the new noise profile,and identify, based on either the new noise profile or a matching noiseprofile of the one or more noise profiles, at least one noise source onthe communication path.
 9. The noise profile generator of claim 8,wherein the communication medium is one of a power line at a customerpremises, twisted pair cable, coaxial cable, or optical fiber.
 10. Thenoise profile generator of claim 8, wherein the communication medium isa wireless connection for at least one of Wi-Fi, Bluetooth, infrared,near-field, or Z-Wave communications.
 11. The noise profile generator ofclaim 8, wherein the communication medium comprises a transmissionspectrum, wherein the transmission spectrum includes a plurality ofsub-carrier channel, each sub-carrier channel spanning a respectivefrequency range within the transmission spectrum, the set ofinstructions further comprises instructions that cause the processor to:retrieve, via the noise information repository, extracted noiseinformation respectively from each of the plurality of sub-carrierchannels, wherein the extracted noise information is extractedrespectively from each of the subcarrier channels; and determine, basedon the extracted noise information, a signal-to-noise ratio respectivelyfor each of the sub-carrier channels.
 12. The noise profile generator ofclaim 8, wherein the set of instructions further comprises instructionsthat cause the processor to: identify, based on the new noise profile orthe matching noise profile, at least one secondary end device on asecond communication path.
 13. The noise profile generator of claim 8,wherein the at least one noise characteristic includes a frequencyspectrum of the noise signal, power spectral density, transient markers,time of day of occurrence, or occurrence patterns.
 14. A method of noiseprofile generation comprising: identifying, by at least one noiseinformation node, a new end device that has been connected to acommunication path; and based on an identification, by the at least onenoise information node, of the new end device that has been connected tothe communication path, identifying, based on a corresponding firstunique identifier associated with the at least one noise informationnode and at a noise profile database, existing noise informationassociated with the communication path, associating a second uniqueidentifier of the new end device with the extracted noise information,subtracting the existing noise information from extracted noiseinformation resulting in an added noise information, generating, basedon the added noise information, an isolated noise profile associatedwith the new end device, retrieving, from the at least one noiseinformation node, the extracted noise information associated with thecommunication path, determining whether the at least one noisecharacteristic of the extracted noise information matches with one ormore noise profiles at the noise profile database, generating, inresponse to determining that at least one noise characteristic of theextracted noise information does not match with the one or more noiseprofiles, a new noise profile based on the extracted noise information,associating, at the noise profile database, at least one of the one ormore end devices with the new noise profile, and identifying, based oneither the new noise profile or a matching noise profile of the one ormore noise profiles, the at least one noise source on the communicationpath.
 15. The method of claim 14, further comprising: extracting, viathe at least one noise information node, noise information present onthe communication path from the customer gateway to at least one of oneor more end devices, the communication path utilizing a communicationmedium; transmitting, via the at least one noise information node, theextracted noise information to a noise information repository;retrieving, via the noise information repository, the extracted noiseinformation associated with the communication path; determining, via anoise profile generator, whether at least one noise characteristic ofthe extracted noise information matches with one or more noise profilesat the noise profile database, wherein each of the one or more noiseprofiles comprises at least one noise characteristic derived from noiseinformation, wherein each of the one or more noise profiles isrespectively associated with at least one noise source; generating, viathe noise profile generator, in response to determining that at leastone noise characteristic of the extracted noise information does notmatch with the one or more noise profiles, a new noise profile based onthe extracted noise information; associating, at the noise profiledatabase, at least one of the one or more end devices with the new noiseprofile; and identifying, based on either the new noise profile or amatching noise profile of the one or more noise profiles, the at leastone noise source on the communication path.
 16. The method of claim 15,wherein the communication medium comprises a transmission spectrum,wherein the transmission spectrum includes a plurality of sub-carrierchannel, each sub-carrier channel spanning a respective frequency rangewithin the transmission spectrum, the method further comprising:retrieving, via the noise information repository, extracted noiseinformation respectively from each of the plurality of sub-carrierchannels, wherein the extracted noise information is extractedrespectively from each of the subcarrier channels; and determine, basedon the extracted noise information, a signal-to-noise ratio respectivelyfor each of the sub-carrier channels.